

import {user} from './enums/user';
import {presale} from './enums/presale';
import {aftersale} from './enums/aftersale';
import {finance} from './enums/finance';
import {workshop} from './enums/workshop';
import {cars} from './enums/cars';
import {boutique} from './enums/boutique';

export {
    user,
    presale,
    aftersale,
    finance,
    workshop,
    cars,
    boutique,
};

/**
 * 初始化下拉菜单选项
 * @param {*} arr 下拉菜单选项数组 
 * @param {*} enums  枚举 eg.. enumHeler.presele.payType
 */
export function initOptions(arr,enums) {
    Object.values(enums).map(v=>{
        if(typeof(v)!='number'){return;}
        arr.push({label:enums.getName(v),value:v});
      });
}


/**
 * 订单枚举
 */
export const order={
    /**
     * 交易状态
     */
  tradeState:{
      fail:0,
      success:1,
      trading:2,
      refunding:3,
      refunded:4,
      getName:function(state){
          return ['关闭','成功','待支付','退款中','已退款',''][state];
      }
  },
  /**
   * 支付方式
   */
  payType:{
    none : 0,
    aliPay : 1,
    weixin : 2,
    account : 3,
    microWeiXin : 4,
    unKnown : 9,
    getName:function(state){
        return ['','支付宝','微信','账户','微信小程序','','','','','未知'][state];
    }
  },
  /**
   * 订单类型
   */
  orderType:{
    charge : 1,
    spend : 2,
    authentie : 3,
    keAssemble : 4,
    keBargain : 5,
    getName:function(state){
        return ['','充值','消费','认证','团购','砍价'][state];
    }
  }

}

/**
 * 退款枚举
 */
export const refund={
    refundState:{
        refunding : 1,
        Rrefunded : 2,
        cancel : 3,
        arbitrate:4,
        paying:4,
        getName:function(state){
            return ['','退款中','已退款','已取消','仲裁中','待支付'][state];
        }
    },
    activityType:{
        waiting:0,
        userapply:1,
        shopresolve:2,
        shopreject:3,
        userresolve:4,
        userreject:5,
        shoparbitrate:6,
        userarbitrate:7,
        adminresolve:8,
        usercancel:9,
        systemautoarbitrate:10,
        getName:function(state){
            return ['等待处理中','用户申请','商家通过','商家拒绝','用户通过','用户拒绝','商家申请仲裁','用户申请仲裁','仲裁完成','用户取消','平台仲裁'][state];
        }
    }
  }

  /**
   * 优惠券枚举
   */
export const coupon={
    couponState:{
        
    }
}


/**
 * 系统相关
 */

 export const system={
     mobileClient:{
        user : 1, //商家端
        shop : 2, //用户端
        agent : 3, //营销端
        getName:function(val){
            return ['','商家端','用户端','营销端','',''][val];
        }
     },
     systemTask:{
         orderrefund:1,
         orderrefundpaying:2,
         orderpaying:3,
         orderpaysuccess:4,
         ordersettlement:5,
         assembletimeout:6,
         bargaintimeout:7,
         getName:function(val){
            return ['','订单退款','订单退款支付','订单待支付','订单付款成功','订单结算','拼团超时','砍价订单超时','',''][val];
        }
     },
     taskResult:{
        waiting:0,
        error:1,
        deleted:2,
        done:3,
        getName:function(val){
           return ['等待','错误','已删除','完成','',''][val];
       }
    }
 }

 /**
  * 店铺相关
  */
 export const shop={
    shopType:{
       notcheck : 0, //未审核
       common : 1, //已审核 普通商家
       honesty : 2, //已审核 诚信商家
       refuse:3, //已拒绝
       getName:function(val){
           return ['未审核','普通商家','诚信商家','已拒绝','',''][val];
       }
    }
}



 /**
  * 运营商相关
  */
 export const agent={
    checkType:{
       notcheck : 0, //未审核
       checked : 1, //已审核
       rejected : 2, //已拒绝
       timeout:3, //已超时
       areaUsed:4, //已被占用
       getName:function(val){
           return ['未审核','已通过','已拒绝','已超时','区域被占用'][val];
       }
    }
}


